<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>openid.fetchers</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">

<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="openid-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://openidenabled.com/python-openid/">Python-OpenID</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <font size="-1"><b class="breadcrumbs">
        <a href="openid-module.html">Package&nbsp;openid</a> ::
        Module&nbsp;fetchers
      </b></font></br>
    </td>
    <td><table cellpadding="0" cellspacing="0">
      <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="openid.fetchers-module.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
    </table></td>
</tr></table>

<!-- =========== START OF MODULE DESCRIPTION =========== -->
<h2 class="module">Module openid.fetchers</h2>

This module contains the HTTP fetcher interface and several 
implementations.
<hr/>

<!-- =========== START OF CLASSES =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Classes</th></tr>
<tr><td width="15%">
  <b><a href="openid.fetchers.HTTPFetcher-class.html"><code>HTTPFetcher</code></a></b></td>
  <td>This class is the interface for openid HTTP fetchers.</td></tr>
<tr><td width="15%">
  <b><a href="openid.fetchers.HTTPResponse-class.html"><code>HTTPResponse</code></a></b></td>
  <td>XXX document attributes</td></tr>
</table><br />


<!-- =========== START OF EXCEPTIONS =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Exceptions</th></tr>
<tr><td width="15%">
  <b><a href="openid.fetchers.HTTPError-class.html"><code>HTTPError</code></a></b></td>
  <td>This exception is raised by the 
<code><code>CurlHTTPFetcher</code></code> when it encounters an 
exceptional situation fetching a URL.</td></tr>
<tr><td width="15%">
  <b><a href="openid.fetchers.HTTPFetchingError-class.html"><code>HTTPFetchingError</code></a></b></td>
  <td>Exception that is wrapped around all exceptions that are raised by the 
underlying fetcher when using the ExceptionWrappingFetcher</td></tr>
</table><br />


<!-- =========== START OF FUNCTION SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Function Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="openid.fetchers-module.html#createHTTPFetcher" class="summary-sig-name"><code>createHTTPFetcher</code></a>()</span></code>
<br />
Create a default HTTP fetcher instance</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="openid.fetchers-module.html#fetch" class="summary-sig-name"><code>fetch</code></a>(<span class=summary-sig-arg>url</span>,
          <span class=summary-sig-arg>body</span>,
          <span class=summary-sig-arg>headers</span>)</span></code>
<br />
Invoke the fetch method on the default fetcher.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">        HTTPFetcher
</font></td>
  <td><code><span class="summary-sig"><a href="openid.fetchers-module.html#getDefaultFetcher" class="summary-sig-name"><code>getDefaultFetcher</code></a>()</span></code>
<br />
Return the default fetcher instance if no fetcher has been set, it 
will create a default fetcher.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="openid.fetchers-module.html#setDefaultFetcher" class="summary-sig-name"><code>setDefaultFetcher</code></a>(<span class=summary-sig-arg>fetcher</span>,
          <span class=summary-sig-arg>wrap_exceptions</span>)</span></code>
<br />
Set the default fetcher</td></tr>
</table><br />


<!-- =========== START OF FUNCTION DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Function Details</th></tr>
</table>

<a name="createHTTPFetcher"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">createHTTPFetcher</span>()</span>
  </h3>
  <p>Create a default HTTP fetcher instance</p>
  prefers Curl to urllib2.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="fetch"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">fetch</span>(<span class=sig-arg>url</span>,
          <span class=sig-arg>body</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>headers</span>=<span class=sig-default>None</span>)</span>
  </h3>
  Invoke the fetch method on the default fetcher. Most users should 
  need only this method.
  <dl><dt></dt><dd>
    <dl><dt><b>Raises:</b></dt>
      <dd><code><b>Exception</b></code> -
        any exceptions that may be raised by the default fetcher
    </dl>
  </dd></dl>
</td></tr></table>

<a name="getDefaultFetcher"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">getDefaultFetcher</span>()</span>
  </h3>
  Return the default fetcher instance if no fetcher has been set, it 
  will create a default fetcher.
  <dl><dt></dt><dd>
    <dl><dt><b>Returns:</b></dt>
      <dd>
        the default fetcher
        <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        (type=HTTPFetcher)</i>
      </dd>
    </dl>
  </dd></dl>
</td></tr></table>

<a name="setDefaultFetcher"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">setDefaultFetcher</span>(<span class=sig-arg>fetcher</span>,
          <span class=sig-arg>wrap_exceptions</span>=<span class=sig-default>True</span>)</span>
  </h3>
  Set the default fetcher
  <dl><dt></dt><dd>
    <dl><dt><b>Parameters:</b></dt>
      <dd><code><b>fetcher</b></code> -
         The fetcher to use as the default HTTP fetcher
        <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        (type=HTTPFetcher)</i>
      <dd><code><b>wrap_exceptions</b></code> -
         Whether to wrap exceptions thrown by the fetcher wil 
        HTTPFetchingError so that they may be caught easier. By default, 
        exceptions will be wrapped. In general, unwrapped fetchers are 
        useful for debugging of fetching errors or if your fetcher raises 
        well-known exceptions that you would like to catch.
        <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        (type=bool)</i>
      </dd>
    </dl>
  </dd></dl>
</td></tr></table>
<br />


<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="openid-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://openidenabled.com/python-openid/">Python-OpenID</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
    <td align="left"><font size="-2">Generated by Epydoc 2.1 on Fri Dec 14 16:10:52 2007</font></td>
    <td align="right"><a href="http://epydoc.sourceforge.net"
                      ><font size="-2">http://epydoc.sf.net</font></a></td>
  </tr>
</table>
</body>
</html>
